package br.seplan.controller;

import java.io.IOException;
import java.util.Date;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import br.seplan.daos.ChamadoDAO;
import br.seplan.daos.PredioDAO;
import br.seplan.daos.UsuarioDAO;
import br.seplan.entidades.Atividade;
import br.seplan.entidades.Chamado;
import br.seplan.entidades.Predio;
import br.seplan.entidades.StatusChamado;
import br.seplan.entidades.SubtipoChamado;
import br.seplan.entidades.Usuario;

@SuppressWarnings("serial")
public class AbrirChamadoAction extends HttpServlet{
	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
				Date data = new Date();
				String dtaHoje = ""+data.getDate()+"/"+String.format("%02d",(data.getMonth()+1))+"/"+(data.getYear()+1900)+"";
				UsuarioDAO userDao = new UsuarioDAO();
				PredioDAO predioDao = new PredioDAO();

				Chamado chamado = new Chamado(req.getParameter("tipoChamado"),
											  SubtipoChamado.findTipoByOName(req.getParameter("subtipoChamado")),
											  Atividade.findTipoByOName(req.getParameter("atividade")),
											  req.getParameter("contrato"),
											  req.getParameter("tecnico"),
											  req.getParameter("dtAgendamento"),
											  req.getParameter("dtInicioReal"),
											  req.getParameter("dtPrevisaoEncerramento"),
											  StatusChamado.findTipoByOName("ABERTO"),
											  req.getParameter("remetenteEmail"),
											  req.getParameter("dataRecEmail"),
											  userDao.findById(4),
											  req.getParameter("descricao"),
											  req.getParameter("dtLimiteEncerramento"),
											  dtaHoje, predioDao.findByCod(req.getParameter("codigo_imovel")));

				ChamadoDAO cDao = new ChamadoDAO();
				cDao.cadastrar(chamado);
			
			req.getRequestDispatcher("listarChamado").forward(req,resp);
	}
}
